home *** CD-ROM | disk | FTP | other *** search
/ Delphi Magazine Collection 2001 / Delphi Magazine Collection 20001 (2001).iso / DISKS / ISSUE07 / CLINIC / TABLE.PAS < prev    next >
Encoding:
Pascal/Delphi Source File  |  1996-02-07  |  1.0 KB  |  50 lines

  1. unit Table;
  2.  
  3. interface
  4.  
  5. uses
  6.   SysUtils, WinTypes, WinProcs, Messages, Classes, Graphics, Controls,
  7.   Forms, Dialogs, DB, DBTables;
  8.  
  9. type
  10.   TNewTable = class(TTable)
  11.   public
  12.     constructor Create(AOwner: TComponent); override;
  13.   end;
  14.  
  15. procedure Register;
  16.  
  17. implementation
  18.  
  19. constructor TNewTable.Create(AOwner: TComponent);
  20. var
  21.   Field, OldField: TField;
  22.   SaveActive: Boolean;
  23. begin
  24.   inherited Create(AOwner);
  25.   DatabaseName := 'DBDEMOS';
  26.   TableName := 'CUSTOMER';
  27.   if not (csLoading in AOwner.ComponentState) then
  28.   begin
  29.     SaveActive := Active;
  30.     Active := True;
  31.     { Specify target field here }
  32.     OldField := FieldByName('Company');
  33.     Field := TFieldClass(OldField.ClassType).Create(Owner);
  34.     Field.FieldName := OldField.FieldName;
  35.     Field.Name := Name + Field.FieldName;
  36.     Field.Size := OldField.Size;
  37.     if not SaveActive then
  38.       Active := False;
  39.     Field.DataSet := Self;
  40.   end;
  41. end;
  42.  
  43. procedure Register;
  44. begin
  45.   RegisterComponents('Samples', [TNewTable]);
  46. end;
  47.  
  48. end.
  49.  
  50.